home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / PARI / PARI1 / pari / h / gencom < prev    next >
Text File  |  1991-12-14  |  22KB  |  597 lines

  1. /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  2. /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  3. /*                                                                 */
  4. /*                        Fichier Include PARI                     */
  5. /*                                                                 */
  6. /*                    commun a toutes les versions                 */
  7. /*                                                                 */
  8. /*                        copyright  Babecool                      */
  9. /*                                                                 */
  10. /*                                                                 */
  11. /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  12. /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  13.  
  14. typedef long    *GEN;
  15. typedef unsigned long ulong;
  16.  
  17. typedef struct entree {
  18.   char *name;
  19.   long valence;
  20.   void *value;
  21.   struct entree *next;
  22. } entree;
  23.  
  24. typedef unsigned char *byteptr;
  25.  
  26. /*      Variables statiques communes :
  27.         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  */
  28.  
  29. extern  unsigned long overflow,hiremainder;
  30.  
  31. extern  long    prec,precdl,defaultpadicprecision;
  32. extern  GEN     bernzone,gpi,geuler;
  33. extern  long    tglobal,paribuffsize,pariecho;
  34. extern  long    *ordvar,varchanged;
  35. extern  GEN     polvar;
  36. extern  GEN     RAVYZARC;
  37.  
  38. extern  long    NUMFUNC;
  39. extern  entree  fonctions[],*hashtable[];
  40. extern  long    lontyp[],lontyp2[];
  41.  
  42. extern  jmp_buf environnement;
  43. extern  FILE    *outfile, *logfile, *infile;
  44.  
  45. extern  unsigned long    avma,bot,top;
  46. extern  GEN     gnil,gun,gdeux,ghalf,gi,gzero;
  47.  
  48. extern  GEN     *polun,*polx;
  49. extern  byteptr diffptr;
  50.  
  51. extern  GEN     *g;
  52. extern  entree  **varentries; /* noms des inconnues actives */
  53. extern  GEN     *blocliste;   /* tableau des pointeur de blocs */
  54. extern  long    nvar;         /* numero de la prochaine inconnue */
  55. extern  long    glbfmt[];
  56.  
  57. extern  char    *helpmessage[]; /* un message pour chaque fonction predefinei */
  58. extern  char    *errmessage[];  /* un par numero d'erreur */
  59.  
  60. #define STACKSIZE      1000  /* nombre de gn possibles */
  61. #define MAXVAR          150  /* nombre maximum de variables */
  62. #define MAXFILES 5
  63. #define TBLSZ           135  /* taille de la table de hashcodes */
  64. #define MAXBLOC        5000  /* nombre de blocs autorises dans le tas */
  65.  
  66. #define K       9.632959862             /* 32*log(2)/log(10)    */
  67. #define K1      0.103810253             /* log(10)/(32*log(2))  */
  68. #define K2      1.1239968               /* 1/(1-(log(2)/(2*pi)))*/
  69. /* #define K3      0.900643041 */            /* 1/(1+(log(2)/(2*pi)))*/
  70. #define K4      0.5337333889            /* e*pi/16              */
  71. #define LOG2    0.693147180559945       /* log(2)               */
  72. #define L2SL10  0.301029995663981       /* log(2)/log(10)       */
  73. #undef  PI
  74. #define PI      3.141592653589          /* pi                   */
  75. #define rac5    2.23606797749           /* racine de 5          */
  76. #define C1      0.9189385332            /* log(2*pi)/2          */
  77. #define C2      22.18070978             /* 32*log(2)            */
  78. #define C3      0.0216950598            /* log((1+sqrt(5))/2)/(32*log(2)) */
  79. #define C4      4294967296.0            /* 2^32                 */
  80. #define C31     2147483648.0            /* 2^31                 */
  81. #define CN31    -2147483648.0           /* -2^31                */
  82. #define BIGINT  32767                   /* 2^15-1               */
  83. #define LARGERINT 1048576               /* 2^20                 */
  84. #define VERYBIGINT 2147483647           /* 2^31-1               */
  85.  
  86. #ifndef exp2
  87. #define exp2(x) exp((double)(x)*log(2.))
  88. #define log2(x) log((double)(x))/log(2.)
  89. #endif
  90.  
  91. #define min(a,b) ((a)>(b)?(b):(a))
  92. #define max(a,b) ((a)>(b)?(a):(b))
  93.  
  94. #define separe(c)     ((c==';')||(c==':')||(c=='\n'))
  95.  
  96. #define output(x)     {brute(x,'g',-1);printf("\n");fflush(stdout);}
  97. #define outmat(x)     {matbrute(x,'g',-1);printf("\n");fflush(stdout);}
  98. #define outbeaut(x)   {sor(x,'g',-1,0);printf("\n");fflush(stdout);}
  99.  
  100. #define addis(x,s)  addsi(s,x)
  101. #define addrs(x,s)  addsr(s,x)
  102. #define mulis(x,s)  mulsi(s,x)
  103. #define mulri(x,s)  mulir(s,x)
  104. #define mulrs(x,s)  mulsr(s,x)
  105.  
  106. #define gval(x,v) ggval(x,polx[v])
  107. #define gvar9(x) ((typ(x)==9)?gvar2(x):gvar(x))
  108.  
  109. #define lgeti   (long)cgeti
  110. #define lgetr   (long)cgetr
  111. #define lpile   (long)gerepile
  112. #define lstoi   (long)stoi
  113. #define lnegi   (long)negi
  114. #define lnegr   (long)negr
  115. #define lmpneg  (long)mpneg
  116. #define labsi   (long)absi
  117. #define labsr   (long)absr
  118. #define lmpabs  (long)mpabs
  119. #define lmptrunc (long)mptrunc
  120. #define lmpent  (long)mpent
  121. #define lshifts (long)shifts
  122. #define lshifti (long)shifti
  123. #define lshiftr (long)shiftr
  124. #define lmpshift (long)mpshift
  125. #define laddsi  (long)addsi
  126. #define laddsr  (long)addsr
  127. #define laddis  (long)addis
  128. #define laddrs  (long)addrs
  129. #define laddii  (long)addii
  130. #define laddir  (long)addir
  131. #define laddrr  (long)addrr
  132. #define lmpadd  (long)mpadd
  133. #define lsubsi  (long)subsi
  134. #define lsubis  (long)subis
  135. #define lsubsr  (long)subsr
  136. #define lsubrs  (long)subrs
  137. #define lsubii  (long)subii
  138. #define lsubir  (long)subir
  139. #define lsubri  (long)subri
  140. #define lsubrr  (long)subrr
  141. #define lmpsub  (long)mpsub
  142. #define lmulss  (long)mulss
  143. #define lmulsi  (long)mulsi
  144. #define lmulsr  (long)mulsr
  145. #define lmulis  (long)mulis
  146. #define lmulrs  (long)mulrs
  147. #define lmulii  (long)mulii
  148. #define lmulir  (long)mulir
  149. #define lmulri  (long)mulri
  150. #define lmulrr  (long)mulrr
  151. #define lmpmul  (long)mpmul
  152. #define ldivsi  (long)divsi
  153. #define ldivis  (long)divis
  154. #define ldivsr  (long)divsr
  155. #define ldivrs  (long)divrs
  156. #define ldivii  (long)divii
  157. #define ldivir  (long)divir
  158. #define ldivri  (long)divri
  159. #define ldivrr  (long)divrr
  160. #define lmpdiv  (long)mpdiv
  161. #define lmodii  (long)modii
  162. #define lresii  (long)resii
  163. #define ldvmdii (long)dvmdii
  164. #define ldvmdsi (long)dvmdsi
  165. #define ldvmdis (long)dvmdis
  166.   
  167. #define ltree   (long)gettree
  168. #define lgen    (long)getgen
  169. #define lcopy   (long)gcopy
  170. #define lclone  (long)gclone
  171. #define lgetg   (long)cgetg
  172. #define lgetp   (long)cgetp
  173. #define laddpex (long)gaddpex
  174. #define lgreffe (long)greffe
  175. #define lopsg2  (long)gopsg2
  176. #define lopgs2  (long)gopgs2
  177. #define lco8    (long)co8
  178. #define lneg    (long)gneg
  179. #define labs    (long)gabs
  180. #define lmax    (long)gmax
  181. #define lmin    (long)gmin
  182. #define ladd    (long)gadd
  183. #define lsub    (long)gsub
  184. #define lmul    (long)gmul
  185. #define ldiv    (long)gdiv
  186. #define linv    (long)ginv
  187. #define lmod    (long)gmod
  188. #define ldivmod (long)gdivmod
  189. #define lshift  (long)gshift
  190. #define lmul2n  (long)gmul2n
  191. #define lpuigs  (long)gpuigs
  192. #define lpui    (long)gpui
  193. #define lsubst  (long)gsubst
  194. #define lderiv  (long)deriv
  195. #define linteg  (long)integ
  196. #define lrecip  (long)recip
  197. #define lceil   (long)gceil
  198. #define lfloor  (long)gfloor
  199. #define lround  (long)ground
  200. #define lcvtoi  (long)gcvtoi
  201. #define lrndtoi (long)grndtoi
  202. #define lfrac   (long)gfrac
  203. #define ltrunc  (long)gtrunc
  204. #define lmodulcp  (long)gmodulcp
  205. #define lmodulo  (long)gmodulo
  206.   
  207. #define lconcat (long)concat
  208. #define lnorm   (long)gnorm
  209. #define lnorml2 (long)gnorml2
  210. #define lconj   (long)gconj
  211. #define lreal   (long)greal
  212. #define limag   (long)gimag
  213. #define lmppi   (long)mppi
  214. #define lmpeuler (long)mpeuler
  215. #define lmpsqrt (long)mpsqrt
  216. #define lsqrt   (long)gsqrt
  217. #define lmpexp1 (long)mpexp1
  218. #define lmpexp  (long)mpexp
  219. #define lexp    (long)gexp
  220. #define lmplog  (long)mplog
  221. #define llog    (long)glog
  222. #define lmpsc1  (long)mpsc1
  223. #define lmpcos  (long)mpcos
  224. #define lcos    (long)gcos
  225. #define lmpsin  (long)mpsin
  226. #define lsin    (long)gsin
  227. #define lmpaut  (long)mpaut
  228. #define lmptan  (long)mptan
  229. #define ltan    (long)gtan
  230. #define lmpatan (long)mpatan
  231. #define latan   (long)gatan
  232. #define lmpasin (long)mpasin
  233. #define lasin   (long)gasin
  234. #define lmpacos (long)mpacos
  235. #define lacos   (long)gacos
  236. #define lmpch   (long)mpch
  237. #define lch     (long)gch
  238. #define lmpsh   (long)mpsh
  239. #define lsh     (long)gsh
  240. #define lmpth   (long)mpth
  241. #define lth     (long)gth
  242. #define lmpath  (long)mpath
  243. #define lath    (long)gath
  244. #define lmpash  (long)mpash
  245. #define lash    (long)gash
  246. #define lmpach  (long)mpach
  247. #define lach    (long)gach
  248. #define lmpgamma (long)mpgamma
  249. #define lgamma  (long)ggamma
  250. #define lmplngamma (long)mplngamma
  251. #define llngamma  (long)glngamma
  252. #define lgamd   (long)ggamd
  253. #define lmppsi  (long)mppsi
  254. #define lpsi    (long)gpsi
  255. #define lmpgamd (long)mpgamd
  256. #define larg    (long)garg
  257. #define lsqr    (long)gsqr
  258.   
  259. #define ltrans  (long)gtrans
  260. #define lscalmat (long)gscalmat
  261. #define lscalsmat (long)gscalsmat
  262. #define laddmat (long)gaddmat
  263. #define laddsmat (long)gaddsmat
  264. #define lgauss  (long)gauss
  265. #define linvmat (long)invmat
  266. #define linvmulmat (long)invmulmat
  267. #define ldet    (long)det
  268. #define ldet2   (long)det2
  269. #define lcaract (long)caract
  270. #define lcaradj (long)caradj
  271. #define ladj    (long)adj
  272. #define ltrace  (long)trace
  273. #define lassmat (long)assmat
  274. #define lscal   (long)gscal
  275.   
  276. #define linvmod (long)ginvmod
  277. #define lred    (long)gred
  278. #define ldeuc   (long)gdeuc
  279. #define lres    (long)gres
  280. #define ldivres (long)poldivres
  281. #define lpoleval (long)poleval
  282. #define lroots  (long)roots
  283. #define lgcd    (long)ggcd
  284. #define lpolgcd (long)polgcd
  285. #define lcontent (long)content
  286. #define lprimpart (long)primpart
  287. #define lpsres  (long)psres
  288. #define lsubres (long)subres
  289. #define ldiscsr (long)discsr
  290. #define lquadpoly (long)quadpoly
  291. #define lquadgen (long)quadgen
  292.   
  293. #define llegendre (long)legendre
  294. #define ltchebi (long)tchebi
  295. #define lhilb   (long)hilb
  296. #define lpasc   (long)pasc
  297. #define lprec   (long)gprec
  298. #define lbinome (long)binome
  299.   
  300. #define lracine (long)racine
  301. #define lmppgcd (long)mppgcd
  302. #define lmpfact (long)mpfact
  303. #define lsfcont (long)sfcont
  304. #define lbezout (long)bezout
  305. #define lmpinvmod (long)mpinvmod
  306. #define lpuissmodulo (long)puissmodulo
  307. #define lfibo   (long)fibo
  308. #define lchangevar (long)changevar
  309.   
  310. #define zero    (long)gzero
  311. #define un      (long)gun
  312. #define deux    (long)gdeux
  313. #define lhalf   (long)ghalf
  314.   
  315. #define lpolx   (long)polx
  316. #define lpolun   (long)polun
  317.  
  318. #define mpmodz(x,y,z)     (modiiz(x,y,z))
  319. #define mpresz(x,y,z)     (resiiz(x,y,z))
  320. #define mpmod(x,y)        (modii(x,y))
  321. #define mpres(x,y)        (resii(x,y))
  322.  
  323. #define laddsg(s,y)         (lopsg2(gadd,s,y))
  324. #define laddgs(y,s)         (lopsg2(gadd,s,y))
  325. #define lsubsg(s,y)         (lopsg2(gsub,s,y))
  326. #define lsubgs(y,s)         (lopgs2(gsub,y,s))
  327. #define lmulsg(s,y)         ((long)gmulsg(s,y))
  328. #define lmulgs(y,s)         ((long)gmulsg(s,y))
  329. #define ldivsg(s,y)         (lopsg2(gdiv,s,y))
  330. #define ldivgs(x,s)         ((long)gdivgs(x,s))
  331. #define lmodsg(s,y)         (lopsg2(gmod,s,y))
  332. #define lmodgs(y,s)         (lopgs2(gmod,y,s))
  333. #define ldiventsg(s,y)      (lopsg2(gdivent,s,y))
  334. #define ldiventgs(y,s)      (lopgs2(gdivent,y,s))
  335. #define lminsg(s,y)         (lopsg2(gmin,s,y))
  336. #define lmings(y,s)         (lopgs2(gmin,y,s))
  337. #define lmaxsg(s,y)         (lopsg2(gmax,s,y))
  338. #define lmaxgs(y,s)         (lopgs2(gmax,y,s))
  339.  
  340.  
  341. #define mppiz(x)              (gop0z(mppi,x))
  342. #define mpeulerz(x)           (gop0z(mpeuler,x))
  343. #define mpsqrtz(x,y)        (gop1z(mpsqrt,x,y))
  344. #define mpexpz(x,y)         (gop1z(mpexp,x,y))
  345. #define mpexp1z(x,y)        (gop1z(mpexp1,x,y))
  346. #define mplogz(x,y)         (gop1z(mplog,x,y))
  347. #define mpcosz(x,y)         (gop1z(mpcos,x,y))
  348. #define mpsinz(x,y)         (gop1z(mpsin,x,y))
  349. #define autz(x,y)           (gop1z(mpaut,x,y))
  350. #define mptanz(x,y)         (gop1z(mptan,x,y))
  351. #define mpatanz(x,y)        (gop1z(mpatan,x,y))
  352. #define mpasinz(x,y)        (gop1z(mpasin,x,y))
  353. #define mpacosz(x,y)        (gop1z(mpacos,x,y))
  354. #define mpchz(x,y)          (gop1z(mpch,x,y))
  355. #define mpshz(x,y)          (gop1z(mpsh,x,y))
  356. #define mpthz(x,y)          (gop1z(mpth,x,y))
  357. #define mpathz(x,y)         (gop1z(mpath,x,y))
  358. #define mpashz(x,y)         (gop1z(mpash,x,y))
  359. #define mpachz(x,y)         (gop1z(mpach,x,y))
  360. #define mpgammaz(x,y)       (gop1z(mpgamma,x,y))
  361. #define mpargz(x,y,z)      (gop2z(mparg,x,y,z))
  362. #define mpfactz(s,y)        (gops1z(mpfact,s,y))
  363.  
  364. #define gredz(x,y)          (gop1z(gred,x,y))
  365. #define gnegz(x,y)          (gop1z(gneg,x,y))
  366. #define gabsz(x,y)          (gop1z(gabs,x,y))
  367. #define gmaxz(x,y,z)       (gop2z(gmax,x,y,z))
  368. #define gminz(x,y,z)       (gop2z(gmin,x,y,z))
  369. #define gaddz(x,y,z)       (gop2z(gadd,x,y,z))
  370. #define gsubz(x,y,z)       (gop2z(gsub,x,y,z))
  371. #define gmulz(x,y,z)       (gop2z(gmul,x,y,z))
  372. #define gdivz(x,y,z)       (gop2z(gdiv,x,y,z))
  373. #define gdeucz(x,y,z)      (gop2z(gdeuc,x,y,z))
  374. #define gdiventz(x,y,z)    (gop2z(gdivent,x,y,z))
  375. #define gmodz(x,y,z)       (gop2z(gmod,x,y,z))
  376. #define gshiftz(x,s,z)      (gops2gsz(gshift,x,s,z))
  377. #define gmul2nz(x,s,z)      (gops2gsz(gmul2n,x,s,z))
  378. #define gaddsg(s,y)         (gopsg2(gadd,s,y))
  379. #define gaddgs(y,s)         (gopsg2(gadd,s,y))
  380. #define gsubsg(s,y)         (gopsg2(gsub,s,y))
  381. #define gsubgs(y,s)         (gopgs2(gsub,y,s))
  382. #define gcmpsg(s,y)         (-opgs2(gcmp,y,s))
  383. #define gcmpgs(y,s)         (opgs2(gcmp,y,s))
  384. #define gegalsg(s,y)        (opgs2(gegal,y,s))
  385. #define gegalgs(y,s)        (opgs2(gegal,y,s))
  386. #define gmulgs(y,s)         (gmulsg(s,y))
  387. #define gdivsg(s,y)         (gopsg2(gdiv,s,y))
  388. #define gdiventsg(s,y)      (gopsg2(gdivent,s,y))
  389. #define gdiventgs(y,s)      (gopgs2(gdivent,y,s))
  390. #define gmodsg(s,y)         (gopsg2(gmod,s,y))
  391. #define gmodgs(y,s)         (gopgs2(gmod,y,s))
  392. #define gminsg(s,y)         (gopsg2(gmin,s,y))
  393. #define gmings(y,s)         (gopgs2(gmin,y,s))
  394. #define gmaxsg(s,y)         (gopsg2(gmax,s,y))
  395. #define gmaxgs(y,s)         (gopgs2(gmax,y,s))
  396.  
  397.  
  398. #define gaddsgz(s,y,z)    (gopsg2z(gadd,s,y,z))
  399. #define gaddgsz(y,s,z)    (gopsg2z(gadd,s,y,z))
  400. #define gsubsgz(s,y,z)    (gopsg2z(gsub,s,y,z))
  401. #define gsubgsz(y,s,z)    (gopgs2z(gsub,y,s,z))
  402. #define gmulsgz(s,y,z)    (gops2sgz(gmulsg,s,y,z))
  403. #define gmulgsz(y,s,z)    (gops2sgz(gmulsg,s,y,z))
  404. #define gdivsgz(s,y,z)    (gopsg2z(gdiv,s,y,z))
  405. #define gdivgsz(y,s,z)    (gops2gsz(gdivgs,y,s,z))
  406. #define gdiventsgz(s,y,z) (gopsg2z(gdivent,s,y,z))
  407. #define gdiventgsz(y,s,z) (gopgs2z(gdivent,y,s,z))
  408. #define gmodsgz(s,y,z)    (gopsg2z(gmod,s,y,z))
  409. #define gmodgsz(y,s,z)    (gopgs2z(gmod,y,s,z))
  410. #define gminsgz(s,y,z)    (gopsg2z(gmin,s,y,z))
  411. #define gmingsz(y,s,z)    (gopgs2z(gmin,y,s,z))
  412. #define gmaxsgz(s,y,z)    (gopsg2z(gmax,s,y,z))
  413. #define gmaxgsz(y,s,z)    (gopgs2z(gmax,y,s,z))
  414.  
  415. #define coeff(a,i,j)      (*((long*)(*(a+(j)))+(i)))
  416. #define coef1(a,i,j)      (*((long*)(*(a+(j)+1))+(i)+1))
  417. #define bern(i)         (bernzone + (i)*(*(bernzone + 2)) + 3)
  418.  
  419. #define isonstack(x)   (RAVYZARC=(GEN)(x),((RAVYZARC>=(GEN)bot)&&(RAVYZARC<(GEN)top)))
  420.  
  421. #define copyifstack(x) (RAVYZARC=(GEN)(x),((RAVYZARC>=(GEN)bot)&&(RAVYZARC<(GEN)top))?lcopy(RAVYZARC):(long)RAVYZARC)
  422.  
  423. #define adecaler(x,tetpil,anavma) (RAVYZARC=(GEN)(x),((RAVYZARC>=(GEN)anavma)&&(RAVYZARC<(GEN)tetpil)))
  424.  
  425. #define isscalar(x)   ((typ(x)<10)||((typ(x)==10)&&(lgef(x)<=3)))
  426. #define isnonscalar(x)  ((typ(x)==10)&&(lgef(x)>3))
  427. #define leadingterm(x)  ((typ(x)<10)?x:((GEN)(x[lgef(x)-1])))
  428.  
  429. #define odd(x)                (x & 1)
  430. #define mpodd(x) (signe(x) && odd(mant(x,lgef(x) - 2)))
  431.  
  432. /* mp.c ou mp.s */
  433.  
  434. GEN     cgetr(),cgeti(),gerepile(),stoi();
  435. GEN     negi(),negr(),absi(),absr();
  436. GEN     mptrunc(),mpent(),shifts(),shifti(),shiftr();
  437. GEN     addsi(),addsr(),addii(),addir(),addrr(),mpadd();
  438. GEN     subsi(),subsr(),subii(),subir();
  439. GEN     subri(),subrr(),mpsub();
  440. GEN     mulss(),mulsi(),mulsr(),mulii(),mulir(),mulrr(),mpmul();
  441. GEN     divsi(),divis(),divsr(),divrs(),divir();
  442. GEN     divri(),divrr(),mpdiv(),convi(),confrac();
  443. GEN     modss(),resss(),modsi(),ressi(),modis(),resis(),modii();
  444. GEN     dvmdii(),dvmdsi(),dvmdis();
  445. long    itos(),vals(),vali(),divisii();
  446. int     expi();
  447. void    affii(),affir(),affrr(),mulsii(),addsii(),divsiz(),divisz(),divssz();
  448. void    dvmdssz(),dvmdsiz(),dvmdisz(),dvmdiiz(),mpdivz(),modiiz();
  449. void    diviiz(),divrrz(),cgiv();
  450.      
  451. /* alglin.c */
  452.      
  453. GEN     gtrans(),gscalmat(),gscalsmat(),gaddmat(),gaddsmat(),inverseimage();
  454. GEN     ker(),keri(),kerreel(),image(),image2(),suppl(),eigen(),hess();
  455. GEN     carhess();
  456. GEN     gauss(),invmat(),det(),detreel(),det2();
  457. GEN     caract(),caradj(),adj(),caradj0(),trace();
  458. GEN     assmat(),gnorm(),gnorml2(),gconj(),concat(),idmat();
  459. GEN     extract(),matextract(),gtomat(),invmulmat(),invmulmatreel(),invmatreel();
  460. GEN     sqred(),sqred1(),sqred2(),sqred3(),signat(),jacobi(),matrixqz(),matrixqz2(),matrixqz3();
  461. GEN     indexrank(),kerint(),kerint1(),kerint2(),intersect();
  462. long    rank();
  463.  
  464. /* anal.c */
  465.      
  466. GEN     lisexpr(),readexpr(),lisseq(),readseq();
  467. void    switchin(), switchout(), fliplog();
  468.      
  469. /* arith.c */
  470.      
  471. GEN     racine(),mppgcd(),mpfact(),mpfactr();
  472. GEN     sfcont(),sfcont2(),gcf(),gcf2(),pnqn(),gboundcf();
  473. GEN     bezout(),chinois(),mpinvmod(),puissmodulo(),fibo(),bigprem(),prime();
  474. GEN     primes(),phi(),decomp(),auxdecomp(),smallfact(),boundfact();
  475. GEN     sumdiv(),sumdivk(),numbdiv(),binaire(),order(),gener(),divisors();
  476. GEN     ellfacteur(),classno(),classno2(),classno3(),fundunit(),regula();
  477. GEN     compose(),sqcomp(),qfi(),qfr(),compreal(),redreal(),sqcompreal();
  478. GEN     rhoreal(),rhorealnod(),redrealnod(),compose2(),sqcomp2(),redcomp();
  479. GEN     primeform(),nucomp(),nudupl(),nupow();
  480. GEN     comprealraw(),sqcomprealraw(),powrealraw();
  481.      
  482. long    kronecker(),krosg(),krogs(),kross(),kro8();
  483. long    mu(),omega(),bigomega(),hil(),carreparfait();
  484. long    isprime(),ispsp(),issquarefree(),isfundamental();
  485. int     bittest();
  486. byteptr initprimes();
  487. void    lucas();
  488.  
  489. /* base.c */
  490.  
  491. GEN     base(),smallbase(),discf(),smalldiscf(),hnf(),hnfold(),smith(),smith2();
  492. GEN     factoredbase(),factoreddiscf(),allbase(),galois(),initalg();
  493. GEN     tchirnhausen(),galoisconj();
  494.  
  495. /* bibli1.c */
  496.      
  497. GEN     tayl(),legendre(),tchebi(),hilb(),pasc(),laplace();
  498. GEN     gprec(),convol(),ggrando(),gconvsp(),gconvpe(),gaminc();
  499. GEN     lll(),lll1(),lllrat(),lllgram(),lllgram1(),lllgramint(),lllint();
  500. GEN     lllgramkerim(),lllkerim(),lllgramall(),lllall0();
  501. GEN     binome(),gscal(),cyclo(),vecsort();
  502. GEN     lindep(),lindep2(),algdep(),algdep2(),changevar(),ordred();
  503. GEN     polrecip(),reorder(),sort(),lexsort(),indexsort(),polsym(),minim();
  504. GEN     polred(),factoredpolred(),smallpolred(),polred2(),factoredpolred2();
  505. GEN     smallpolred2(),allpolred(),polymodrecip(),genrand(),permute();
  506. long    setprecr(),setserieslength();
  507.      
  508. /* bibli2.c */
  509.  
  510. GEN     somme(),produit(),suminf(),prodinf(),prodinf1(),prodeuler();
  511. GEN     vecteur(),vvecteur(),matrice(),divsomme();
  512. GEN     qromb(),qromo(),qromi(),rombint();
  513. GEN     polint(),plot(),ploth(),ploth2(),zbrent(),sumalt(),sumpos();
  514. GEN     forpari(),forstep(),fordiv(),forprime();
  515.  
  516. /* elliptic.c */
  517.  
  518. GEN     ghell(),ghell2(),ghell3();
  519. GEN     initell(),initell2(),smallinitell(),zell(),coordch(),pointch();
  520. GEN     addell(),subell(),powell(),matell(),ordell(),apell(),apell1(),apell2(),anell();
  521. GEN     localreduction(), globalreduction(),lseriesell(),pointell();
  522. int     oncurve();
  523. void    eulsum();
  524.  
  525. /* es.c */
  526.  
  527. void    filtre(),  pariputc(), pariputs(), ecrire(), voir(), sor();
  528. void    brute(), matbrute(), texe(), etatpile();
  529.  
  530. /* gen1.c */
  531.  
  532. GEN     gadd(),gsub(),gmul(),gdiv();
  533.  
  534. /* gen2.c gen3.c */
  535.  
  536. GEN     gcopy(),forcecopy(),gclone(),cgetg(),cgetp(),gaddpex();
  537. GEN     greffe(),gopsg2(),gopgs2(),co8(),cvtop(),compo(),gsqr();
  538. GEN     gneg(),gabs(),gmax(),gmin(),ginv(),denom(),numer(),lift(),centerlift();
  539. GEN     gmulsg(),gdivgs(),gmodulo(),gmodulcp(),simplify();
  540. GEN     gmod(),gshift(),gmul2n(),gpuigs(),gpui();
  541. GEN     gsubst(),deriv(),integ(),recip(),ground(),gcvtoi(),grndtoi();
  542. GEN     gceil(),gfloor(),gfrac(),gtrunc(),gdivent(),gdiventres();
  543. GEN     gdivmod(),geval(),glt(),gle(),ggt(),gge(),geq(),gne();
  544. GEN     gand(),gor(),glength(),matsize(),truecoeff(),gtype();
  545. GEN     gtopoly(),gtopolyrev(),gtoser(),gtovec(),dbltor();
  546.  
  547. void    gop0z(),gop1z(),gop2z(),gops2gsz(),gops2sgz(),gops2ssz();
  548. void    gop3z(),gops1z(),gopsg2z(),gopgs2z(),gaffsg(),gaffect();
  549. void    normalize(),normalizepol();
  550.  
  551. long    taille(),gexpo(),gsigne(),gcmp(),lexcmp(),gtolong(),gegal();
  552. long    polegal(),tdeg(),ismonome(),iscomplex(),gvar(),gvar2(),ggval();
  553. long    rounderror(),gsize();
  554. double  rtodbl(),gtodouble();
  555.  
  556. /* init.c */
  557.  
  558. GEN     newbloc(),geni();
  559. long    marklist();
  560. void    init(),killbloc(),newvalue(),killvalue();
  561. void    err(),recover(),changevalue(),allocatemoremem();
  562.  
  563. /* polarit.c */
  564.      
  565. GEN     ginvmod(),gred(),gdeuc(),gres(),poldivres();
  566. GEN     poleval(),roots(),rootslong(),ggcd(),gbezout(),vecbezout(),glcm();
  567. GEN     polgcd(),srgcd(),polgcdnun(),content(),primpart(),psres(),factmod9();
  568. GEN     factmod(),rootmod(),rootmod2(),decpol(),factor(),factpol(),factpol2();
  569. GEN     subres(),discsr(),quadpoly(),quadgen(),bezoutpol(),polinvmod();
  570. GEN     resultant2(),polfnf(),nfiso(),nfincl();
  571. GEN     newtonpoly(),apprgen(),apprgen9(),rootpadic(),gcvtop(),factorpadic();
  572. long    sturm(),sturmpart(),rootsof1();
  573. void    gredsp();
  574.      
  575. /* trans.c */
  576.      
  577. GEN     greal(),gimag(),teich(),agm(),palog();
  578. GEN     mpsqrt(),gsqrt(),mpexp1(),mpexp(),gexp(),logagm(),glogagm();
  579. GEN     mplog(),glog(),mpsc1(),mpcos(),gcos(),mpsin(),gsin();
  580. GEN     mpaut(),mptan(),gtan(),mpatan(),gatan(),mpasin(),gasin();
  581. GEN     mpacos(),gacos(),mparg(),mpch(),gch(),mpsh(),gsh();
  582. GEN     mpth(),gth(),mpath(),gath(),mpash(),gash();
  583. GEN     garg(),sarg(),mppsi(),gpsi(),transc(),kbessel(),hyperu();
  584. GEN     cxpsi(),jbesselh(),gzeta();
  585. GEN     kbessel2(),eint1(),gerfc(),eta(),jell(),wf2(),wf();
  586. GEN     incgam(),incgam1(),incgam2(),incgam3(),incgam4(),bernreal(),bernvec();
  587. GEN     mpach(),gach(),mpgamma(),cxgamma(),ggamma(),mpgamd(),ggamd(),mppi();
  588. GEN     mpeuler(),polylog(),dilog(),polylogd(),polylogdold(),polylogp(),gpolylog();
  589. GEN     theta(),thetanullk(),mplngamma(),cxlngamma(),glngamma();
  590.  
  591. void    constpi(),consteuler(),gsincos();
  592.  
  593. /* version.c */
  594.  
  595. GEN     gerepilc();
  596. void    printversion();
  597.